


#if !defined( __WXYAXISWINDOW_H__ )
#define __WXYAXISWINDOW_H__



#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma interface "yaxiswindow.h"
#endif

#include <wx/wxprec.h>

#ifdef __BORLANDC__
#pragma hdrstop
#endif

#ifndef WX_PRECOMP
    #include <wx/window.h>
#endif


#include "wx/yaxis.h"


class wxChartSizes;


const int YAXIS_WIDTH	= 60;
const int YAXIS_HEIGHT	= 30;



class WXDLLIMPEXP_CHART wxYAxisWindow : public wxWindow

{
public:
	wxYAxisWindow() {};
	wxYAxisWindow(wxScrolledWindow *parent,
                   ChartValue max = 0, ChartValue min = 0);



	void SetVirtualMax(ChartValue v);
	void SetVirtualMin(ChartValue v);
	ChartValue GetVirtualMax() const;
	ChartValue GetVirtualMin() const;
	void SetSizes(wxChartSizes *sizes);
	const wxChartSizes* GetSizes() const;



	void SetZoom(double z);
	double GetZoom();



	void Draw(CHART_HPAINT hp, int x = 0, int y = 0);

private:
	wxScrolledWindow *m_WinParent;
    wxYAxis m_YAxis;



    void OnPaint(wxPaintEvent &event);
    void OnMouse(wxMouseEvent &event);


    DECLARE_DYNAMIC_CLASS(wxYAxisWindow)

    DECLARE_EVENT_TABLE()
};

#endif // __WXYAXISWINDOW_H__
